<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta
        name="viewport"
        content="width=device-width, initial-scale=1.0"
    >
    <title>axios 发送AJAX请求</title>
    <script
        crossorigin="anonymous"
        src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.0/axios.js"
    ></script>
</head>

<body>
    <button>GET</button>
    <button>POST</button>
    <button>AJAX</button>

    <script>
        const btns = document.querySelectorAll('button');
        //配置 baseURL
        axios.defaults.baseURL = 'http://127.0.0.1:8000';

        btns[0].onclick = function () {
            //GET 请求
            axios.get('/axios-server', {
                //url参数
                params: {
                    id: 100,
                    vip: 7
                },
                //请求头信息
                headers: {
                    name: 'Nliver',
                    age: 20
                }
                //Axios是基于Promise作的数据处理
            }).then(value => {
                console.log(value)
            })
        }

        btns[1].onclick = function () {
            axios.post('/axios-server', {
                //请求体
                username: 'admin',
                password: '123456'
            }, {
                //url 请求行
                params: {
                    id: 200,
                    vip: 9
                },
                //请求头参数
                headers: {
                    height: 100,
                    weight: 180,
                }
            })
        }

        btns[2].onclick = function () {
            axios({
                //请求方法
                method: 'POST',
                //url 请求行
                url: '/axios-server',
                //url参数
                params: {
                    vip: 10,
                    level: 30
                },
                //头信息
                headers: {
                    a: 100,
                    b: 200
                },
                //请求体参数
                data: {
                    username: 'admin',
                    password: '123456'
                }
            }).then(response => {
                console.log(response);
                //响应状态码
                console.log(response.status);
                //响应状态字符串
                console.log(response.statusText);
                //响应头信息
                console.log(response.headers);
                //响应体
                console.log(response.data);
            })
        }
    </script>
</body>

</html>